/**
 * @param {number[]} nums
 * @param {number} k
 * @return {number[]}
 */
var topKFrequent = function(nums, k) {
  const map = new Map();
  for (let i = 0; i < nums.length; i++) {
    if (map.has(nums[i])) {
      map.set(nums[i], map.get(nums[i]) + 1);
    } else {
      map.set(nums[i], 1);
    }
  }

  const arr = Array.from(map).sort((a, b) => b[1] - a[1]);
  return arr.map(item => item[0]).slice(0, k);


};

console.log(topKFrequent([1,1,1,2,2,3], 2))